﻿#if NETFX
using Color = System.Windows.Media.Color;
#elif NETFX_CORE || WINDOWS_PHONE
using Color = Windows.UI.Color;
#endif


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace NicoView.Model.Service.Comments
{
    public abstract class NicoCommentColorBase:INicoCommentColor
    {
        public NicoCommentColorBase(string command,Color color,bool isPremium,bool isDefault)
        {
            Command = command;
            Color = color;
            IsPremium = isPremium;
            IsDefault = isDefault;
        }

        public string Name
        {
            get
            {
                return Command;
            }
        }

        public Color Color
        {
            get;
            private set;
        }

        public bool IsPremium
        {
            get;
            private set;
        }


        public bool IsDefault
        {
            get;
            private set;
        }


        public string Command
        {
            get;
            private set;
        }


        public string Description
        {
            get
            {
                return Command;
            }
        }
    }

    public abstract class NicoCommentPremiumColorBase : NicoCommentColorBase
    {
        public NicoCommentPremiumColorBase(string name, Color color,bool isDefault):base(name,color,true,isDefault)
        {
        }
    }

    public abstract class NicoCommentGeneralColorBase : NicoCommentColorBase
    {
        public NicoCommentGeneralColorBase(string name,Color color,bool isDefault):base(name,color,false,isDefault)
        {
        }
    }

}
